Filters as a Language Support for Design Patterns in Object-oriented Scripting Languages 1.1 Scripting Languages 1.2 Scripting and Object Orientation
نویسندگان
چکیده
Scripting languages are designed for glueing software components together. Such languages provide features like dynamic extensibility and dynamic typing with automatic conversion that make them well suited for rapid application development. Although these features entail runtime penalties, modern CPUs are fast enough to execute even large applications in scripting languages eeciently. Large applications typically entail complex program structures. Object-orientation ooers the means to solve some of the problems caused by this complexity, but focuses only on entities up to the size of a single class. The object-oriented design community proposes design patterns as a solution for complex interactions that are poorly supported by current object-oriented programming languages. In order to use patterns in an application, their implementation has to be scattered over several classes. This fact makes patterns hard to locate in the actual code and complicates their maintenance in an application. This paper presents a general approach to combine the ideas of scripting and object-orientation in a way that preserves the beneets of both of them. It describes the object-oriented scripting language XOTcl (Extended OTcl), which is equipped with several language functionalities that help in the implementation of design patterns. We introduce the lter approach which provides a novel, intuitive, and powerful language support for the instantiation of large program structures like design patterns. In applications, where the emphasis lays on the exible reuse of components, scripting languages, like Tcl (Tool Command Language 25]), are very useful for a fast and high-quality development of software. The application development in scripting languages diiers fundamentally from the development in systems programming languages 26] (like C, C++ or Java), where the whole system is developed in a single language. A scripting language follows a two-level approach, distinguishing between components (reusable software modules) and glue-ing code, which is used to combine the components according to the application needs. This two level approach leads to a rapid application development 26]. Scripting languages are typically interpreted and use a dynamic type system with automatic conversion. The application developer uses a single data type (strings) for the representation of all data. Therefore, the interfaces of all components t together automatically and the components can be reused in unpredicted situations without change. The disadvantages of scripting languages are a loss in eeciency (e.g. for dynamic conversions and method lookup) and the lack of reliability properties of a static type system 18]. But these disadvantages can be compensated …
منابع مشابه
Filters as a Language Support for Design Patterns in Object-Oriented Scripting Languages
Scripting languages are designed for glueing software components together. Such languages provide features like dynamic extensibility and dynamic typing with automatic conversion that make them well suited for rapid application development. Although these features entail runtime penalties, modern CPUs are fast enough to execute even large applications in scripting languages e ciently. Large app...
متن کاملA Temporal Scripting Language for Object-oriented Animation 1
Object orientation and concurrency are inherent to computer animation. Since the pieces of an animation can come from various media such as computer-generated imagery, video, and sound, the case for object orientation is all the stronger. However, languages for expressing the temporal coordination of animated objects have been slow in coming. We present such a language in this paper. Since the ...
متن کاملA Temporal Scripting Language for Object-Oriented Animation
Object orientation and concurrency are inherent to computer animation. Since the pieces of an animation can come from various media such as computer-generated imagery, video, and sound, the case for object orientation is all the stronger. However, languages for expressing the temporal co-ordination of animated objects have been slow in coming. We present such a language in this paper. Since the...
متن کاملThe Role of Planning in Object-Oriented Programming for Beginners
Programming languages, environments, and tools have evolved over time and various programming paradigms, including procedural, functional, object oriented, and scripting languages, have been developed. Despite the advancements, programming remains a difficult task for some novices. Learning an object-oriented language, such as C++ or Java, as a first language presents additional challenges for ...
متن کاملType Systems of Scripting Languages
Type systems play an important role in the design of programming languages, they prevent programs from having non-correct behavior. Typically, type systems are expressed in two ways, type-checking and type inference. The type information presented on local variables and method arguments makes the difference in choosing one technique rather than the other. Type checking is a derivation type infe...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1999